<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<link rel="shortcut icon" type="image/x-icon" href="favicon.ico"/>
<title>DynamoRIO API: drsyms.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">DynamoRIO API
   </div>
  </td>
   <td>        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
</td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.1.1 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('drsyms_8h.html','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Groups</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#nested-classes">Data Structures</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#enum-members">Enumerations</a> &#124;
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">drsyms.h File Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>Header for DRSyms DynamoRIO Extension.  
<a href="#details">More...</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="nested-classes"></a>
Data Structures</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct__drsym__info__t.html">_drsym_info_t</a></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct__drsym__type__t.html">_drsym_type_t</a></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct__drsym__func__type__t.html">_drsym_func_type_t</a></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct__drsym__compound__type__t.html">_drsym_compound_type_t</a></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct__drsym__int__type__t.html">_drsym_int_type_t</a></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct__drsym__ptr__type__t.html">_drsym_ptr_type_t</a></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct__drsym__line__info__t.html">_drsym_line_info_t</a></td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:gac7ae60d7c499c017414574b22d6d4879"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct__drsym__info__t.html">_drsym_info_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__drsyms.html#gac7ae60d7c499c017414574b22d6d4879">drsym_info_t</a></td></tr>
<tr class="memitem:ga75abd525d4d1710196d18d7c13b4c061"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct__drsym__type__t.html">_drsym_type_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__drsyms.html#ga75abd525d4d1710196d18d7c13b4c061">drsym_type_t</a></td></tr>
<tr class="memitem:ga3de06a92ea1be03694869f4f38045938"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct__drsym__func__type__t.html">_drsym_func_type_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__drsyms.html#ga3de06a92ea1be03694869f4f38045938">drsym_func_type_t</a></td></tr>
<tr class="memitem:gae601868c425dd7db2c7450014f1f47b5"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
<a class="el" href="struct__drsym__compound__type__t.html">_drsym_compound_type_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__drsyms.html#gae601868c425dd7db2c7450014f1f47b5">drsym_compound_type_t</a></td></tr>
<tr class="memitem:ga9075a62cb47f48762911d8cd7c683035"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct__drsym__int__type__t.html">_drsym_int_type_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__drsyms.html#ga9075a62cb47f48762911d8cd7c683035">drsym_int_type_t</a></td></tr>
<tr class="memitem:ga6536ad3236ff3d06eeeaf1450cb77b79"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct__drsym__ptr__type__t.html">_drsym_ptr_type_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__drsyms.html#ga6536ad3236ff3d06eeeaf1450cb77b79">drsym_ptr_type_t</a></td></tr>
<tr class="memitem:ga91f8c849b1194872a42f2e272937bcd9"><td class="memItemLeft" align="right" valign="top">typedef bool(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__drsyms.html#ga91f8c849b1194872a42f2e272937bcd9">drsym_enumerate_cb</a> )(const char *name, size_t modoffs, void *data)</td></tr>
<tr class="memitem:gad100c05f0c59c0d24a92563a1672caf2"><td class="memItemLeft" align="right" valign="top">typedef bool(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__drsyms.html#gad100c05f0c59c0d24a92563a1672caf2">drsym_enumerate_ex_cb</a> )(<a class="el" href="group__drsyms.html#gac7ae60d7c499c017414574b22d6d4879">drsym_info_t</a> *info, <a class="el" href="group__drsyms.html#ga78793b36b5a0f529fb746b7ed0072442">drsym_error_t</a> status, void *data)</td></tr>
<tr class="memitem:ga1970a3bc66539e8187ee33c1ce5338e7"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct__drsym__line__info__t.html">_drsym_line_info_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__drsyms.html#ga1970a3bc66539e8187ee33c1ce5338e7">drsym_line_info_t</a></td></tr>
<tr class="memitem:ga05af254b09fc1b6fb45d3b83d458a351"><td class="memItemLeft" align="right" valign="top">typedef bool(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__drsyms.html#ga05af254b09fc1b6fb45d3b83d458a351">drsym_enumerate_lines_cb</a> )(<a class="el" href="group__drsyms.html#ga1970a3bc66539e8187ee33c1ce5338e7">drsym_line_info_t</a> *info, void *data)</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:ga78793b36b5a0f529fb746b7ed0072442"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__drsyms.html#ga78793b36b5a0f529fb746b7ed0072442">drsym_error_t</a> { <br/>
&#160;&#160;<a class="el" href="group__drsyms.html#gga78793b36b5a0f529fb746b7ed0072442a3b3ded5e053b03dd0dde640a2157a7da">DRSYM_SUCCESS</a>, 
<br/>
&#160;&#160;<a class="el" href="group__drsyms.html#gga78793b36b5a0f529fb746b7ed0072442a2fc0cc43fc4976260bca5fa948a5e2a5">DRSYM_ERROR</a>, 
<br/>
&#160;&#160;<a class="el" href="group__drsyms.html#gga78793b36b5a0f529fb746b7ed0072442acff4fa6815bc58797d18faa9a009ac60">DRSYM_ERROR_INVALID_PARAMETER</a>, 
<br/>
&#160;&#160;<a class="el" href="group__drsyms.html#gga78793b36b5a0f529fb746b7ed0072442ae263ac8a135526a666647874f2a32aac">DRSYM_ERROR_INVALID_SIZE</a>, 
<br/>
&#160;&#160;<a class="el" href="group__drsyms.html#gga78793b36b5a0f529fb746b7ed0072442ab1f7615ed26be43741ca64a19a228df9">DRSYM_ERROR_LOAD_FAILED</a>, 
<br/>
&#160;&#160;<a class="el" href="group__drsyms.html#gga78793b36b5a0f529fb746b7ed0072442a7f8fdc7d8da1402cdcd770983dee1da1">DRSYM_ERROR_SYMBOL_NOT_FOUND</a>, 
<br/>
&#160;&#160;<a class="el" href="group__drsyms.html#gga78793b36b5a0f529fb746b7ed0072442af631dcc99434b8d60a763b751f735db3">DRSYM_ERROR_LINE_NOT_AVAILABLE</a>, 
<br/>
&#160;&#160;<a class="el" href="group__drsyms.html#gga78793b36b5a0f529fb746b7ed0072442aba1d3dbb8ee3bb78b3c921300eefa21a">DRSYM_ERROR_NOT_IMPLEMENTED</a>, 
<br/>
&#160;&#160;<a class="el" href="group__drsyms.html#gga78793b36b5a0f529fb746b7ed0072442a0de481dcf671e55ee1c01993bc204d7a">DRSYM_ERROR_FEATURE_NOT_AVAILABLE</a>, 
<br/>
&#160;&#160;<a class="el" href="group__drsyms.html#gga78793b36b5a0f529fb746b7ed0072442aa0b083a538144f834aca12b71cc45652">DRSYM_ERROR_NOMEM</a>, 
<br/>
&#160;&#160;<a class="el" href="group__drsyms.html#gga78793b36b5a0f529fb746b7ed0072442a779dfcdf51f4816da44d8b291fdc008d">DRSYM_ERROR_RECURSIVE</a>
<br/>
 }</td></tr>
<tr class="memitem:ga0b67aaba18a6215dfc1ff4c68b57d41e"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__drsyms.html#ga0b67aaba18a6215dfc1ff4c68b57d41e">drsym_flags_t</a> { <br/>
&#160;&#160;<a class="el" href="group__drsyms.html#gga0b67aaba18a6215dfc1ff4c68b57d41eaaa4ed2e3efae09a5a43cc303e10a89ba">DRSYM_LEAVE_MANGLED</a> =  0x00, 
<br/>
&#160;&#160;<a class="el" href="group__drsyms.html#gga0b67aaba18a6215dfc1ff4c68b57d41ea85d6e34c4fcb68eb97a07774102c4b0e">DRSYM_DEMANGLE</a> =  0x01, 
<br/>
&#160;&#160;<a class="el" href="group__drsyms.html#gga0b67aaba18a6215dfc1ff4c68b57d41ea926400b119322cf478117df1a074c6dc">DRSYM_DEMANGLE_FULL</a> =  0x02, 
<br/>
&#160;&#160;<a class="el" href="group__drsyms.html#gga0b67aaba18a6215dfc1ff4c68b57d41eaf5d562cfc61f955bb16455e199dc167e">DRSYM_DEMANGLE_PDB_TEMPLATES</a> =  0x04, 
<br/>
&#160;&#160;<a class="el" href="group__drsyms.html#gga0b67aaba18a6215dfc1ff4c68b57d41ea551ab826d0640b71183cea1115c697cf">DRSYM_FULL_SEARCH</a> =  0x08, 
<br/>
&#160;&#160;<a class="el" href="group__drsyms.html#gga0b67aaba18a6215dfc1ff4c68b57d41ea2df0aa90a6e81681503326e2d8471703">DRSYM_DEFAULT_FLAGS</a> =  DRSYM_DEMANGLE
<br/>
 }</td></tr>
<tr class="memitem:gad3772ffd6c4e0d68738a31d7e25a3de9"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__drsyms.html#gad3772ffd6c4e0d68738a31d7e25a3de9">drsym_debug_kind_t</a> { <br/>
&#160;&#160;<a class="el" href="group__drsyms.html#ggad3772ffd6c4e0d68738a31d7e25a3de9a3906510b7b336284f72153a9c17127b0">DRSYM_SYMBOLS</a> =  (1 &lt;&lt; 0), 
<br/>
&#160;&#160;<a class="el" href="group__drsyms.html#ggad3772ffd6c4e0d68738a31d7e25a3de9aed224abfe6e8297c7ac7bed97efda8c4">DRSYM_LINE_NUMS</a> =  (1 &lt;&lt; 1), 
<br/>
&#160;&#160;<a class="el" href="group__drsyms.html#ggad3772ffd6c4e0d68738a31d7e25a3de9af9680fa1e5316576914fd50d253016da">DRSYM_ELF_SYMTAB</a> =  (1 &lt;&lt; 8), 
<br/>
&#160;&#160;<a class="el" href="group__drsyms.html#ggad3772ffd6c4e0d68738a31d7e25a3de9a114c2a44936aced9bbacc28a3916544c">DRSYM_DWARF_LINE</a> =  (1 &lt;&lt; 9), 
<br/>
&#160;&#160;<a class="el" href="group__drsyms.html#ggad3772ffd6c4e0d68738a31d7e25a3de9a32b1e745d5eb1a730c12f2b2ed973168">DRSYM_PDB</a> =  (1 &lt;&lt; 10), 
<br/>
&#160;&#160;<a class="el" href="group__drsyms.html#ggad3772ffd6c4e0d68738a31d7e25a3de9a0ef6cab1fee912683e2c99498492979b">DRSYM_PECOFF_SYMTAB</a> =  (1 &lt;&lt; 11), 
<br/>
&#160;&#160;<a class="el" href="group__drsyms.html#ggad3772ffd6c4e0d68738a31d7e25a3de9a2a707a29f9e542d4f8f980b3a2cdaafe">DRSYM_MACHO_SYMTAB</a> =  (1 &lt;&lt; 12)
<br/>
 }</td></tr>
<tr class="memitem:ga96a58e29e8dbf2b5bdeb775cba46556e"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <br/>
&#160;&#160;<a class="el" href="group__drsyms.html#gga96a58e29e8dbf2b5bdeb775cba46556ea3df07cfcbf3fcb8e0e203d844421c8f3">DRSYM_TYPE_OTHER</a>, 
<br/>
&#160;&#160;<a class="el" href="group__drsyms.html#gga96a58e29e8dbf2b5bdeb775cba46556eac4568bd915a95c4f2e641c593171ad14">DRSYM_TYPE_INT</a>, 
<br/>
&#160;&#160;<a class="el" href="group__drsyms.html#gga96a58e29e8dbf2b5bdeb775cba46556ea038a317ac51c1ee78f6b85a1ad220d83">DRSYM_TYPE_PTR</a>, 
<br/>
&#160;&#160;<a class="el" href="group__drsyms.html#gga96a58e29e8dbf2b5bdeb775cba46556ead608c508bb62b4ba8303fd66210e7481">DRSYM_TYPE_FUNC</a>, 
<br/>
&#160;&#160;<a class="el" href="group__drsyms.html#gga96a58e29e8dbf2b5bdeb775cba46556ea6e6814cbb29a891671ca7047d49f1e1b">DRSYM_TYPE_VOID</a>, 
<br/>
&#160;&#160;<a class="el" href="group__drsyms.html#gga96a58e29e8dbf2b5bdeb775cba46556ea0967e981148150fd3c30468ec047e8aa">DRSYM_TYPE_COMPOUND</a>
<br/>
 }</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ga8f826a91db73acb16acb6649d26a86cd"><td class="memItemLeft" align="right" valign="top">DR_EXPORT <a class="el" href="group__drsyms.html#ga78793b36b5a0f529fb746b7ed0072442">drsym_error_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__drsyms.html#ga8f826a91db73acb16acb6649d26a86cd">drsym_init</a> (IF_WINDOWS_ELSE(const wchar_t *, int) shmid)</td></tr>
<tr class="memitem:ga5d70a336713dd08ebe256c2eb964d3ae"><td class="memItemLeft" align="right" valign="top">DR_EXPORT <a class="el" href="group__drsyms.html#ga78793b36b5a0f529fb746b7ed0072442">drsym_error_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__drsyms.html#ga5d70a336713dd08ebe256c2eb964d3ae">drsym_exit</a> (void)</td></tr>
<tr class="memitem:ga201e8a9bf6746cbfd232bc4e4a243d2b"><td class="memItemLeft" align="right" valign="top">DR_EXPORT <a class="el" href="group__drsyms.html#ga78793b36b5a0f529fb746b7ed0072442">drsym_error_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__drsyms.html#ga201e8a9bf6746cbfd232bc4e4a243d2b">drsym_lookup_address</a> (const char *modpath, size_t modoffs, <a class="el" href="group__drsyms.html#gac7ae60d7c499c017414574b22d6d4879">drsym_info_t</a> *info, uint flags)</td></tr>
<tr class="memitem:ga6b5e419be145c6956e796dbf3da1678d"><td class="memItemLeft" align="right" valign="top">DR_EXPORT <a class="el" href="group__drsyms.html#ga78793b36b5a0f529fb746b7ed0072442">drsym_error_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__drsyms.html#ga6b5e419be145c6956e796dbf3da1678d">drsym_get_type</a> (const char *modpath, size_t modoffs, uint levels_to_expand, char *buf, size_t buf_sz, <a class="el" href="group__drsyms.html#ga75abd525d4d1710196d18d7c13b4c061">drsym_type_t</a> **type)</td></tr>
<tr class="memitem:gaa2e78185f942918db88c1cc249aa656b"><td class="memItemLeft" align="right" valign="top">DR_EXPORT <a class="el" href="group__drsyms.html#ga78793b36b5a0f529fb746b7ed0072442">drsym_error_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__drsyms.html#gaa2e78185f942918db88c1cc249aa656b">drsym_get_type_by_name</a> (const char *modpath, const char *type_name, char *buf, size_t buf_sz, <a class="el" href="group__drsyms.html#ga75abd525d4d1710196d18d7c13b4c061">drsym_type_t</a> **type)</td></tr>
<tr class="memitem:ga676bf63e860bca8a8eb3a7fe7e0dfa00"><td class="memItemLeft" align="right" valign="top">DR_EXPORT <a class="el" href="group__drsyms.html#ga78793b36b5a0f529fb746b7ed0072442">drsym_error_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__drsyms.html#ga676bf63e860bca8a8eb3a7fe7e0dfa00">drsym_get_func_type</a> (const char *modpath, size_t modoffs, char *buf, size_t buf_sz, <a class="el" href="group__drsyms.html#ga3de06a92ea1be03694869f4f38045938">drsym_func_type_t</a> **func_type)</td></tr>
<tr class="memitem:ga211ebdc7a540e7894a741aac8b2fc808"><td class="memItemLeft" align="right" valign="top">DR_EXPORT <a class="el" href="group__drsyms.html#ga78793b36b5a0f529fb746b7ed0072442">drsym_error_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__drsyms.html#ga211ebdc7a540e7894a741aac8b2fc808">drsym_expand_type</a> (const char *modpath, uint type_id, uint levels_to_expand, char *buf, size_t buf_sz, <a class="el" href="group__drsyms.html#ga75abd525d4d1710196d18d7c13b4c061">drsym_type_t</a> **expanded_type)</td></tr>
<tr class="memitem:ga2e6f4d91b65fc835c047c8ca23c83d06"><td class="memItemLeft" align="right" valign="top">DR_EXPORT <a class="el" href="group__drsyms.html#ga78793b36b5a0f529fb746b7ed0072442">drsym_error_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__drsyms.html#ga2e6f4d91b65fc835c047c8ca23c83d06">drsym_lookup_symbol</a> (const char *modpath, const char *symbol, size_t *modoffs, uint flags)</td></tr>
<tr class="memitem:ga260c78496165b54b9a97d0a5e1f6f4d8"><td class="memItemLeft" align="right" valign="top">DR_EXPORT <a class="el" href="group__drsyms.html#ga78793b36b5a0f529fb746b7ed0072442">drsym_error_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__drsyms.html#ga260c78496165b54b9a97d0a5e1f6f4d8">drsym_enumerate_symbols</a> (const char *modpath, <a class="el" href="group__drsyms.html#ga91f8c849b1194872a42f2e272937bcd9">drsym_enumerate_cb</a> callback, void *data, uint flags)</td></tr>
<tr class="memitem:gad883ab113dd57f77db0c279de2c055f8"><td class="memItemLeft" align="right" valign="top">DR_EXPORT <a class="el" href="group__drsyms.html#ga78793b36b5a0f529fb746b7ed0072442">drsym_error_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__drsyms.html#gad883ab113dd57f77db0c279de2c055f8">drsym_enumerate_symbols_ex</a> (const char *modpath, <a class="el" href="group__drsyms.html#gad100c05f0c59c0d24a92563a1672caf2">drsym_enumerate_ex_cb</a> callback, size_t info_size, void *data, uint flags)</td></tr>
<tr class="memitem:gad582a65dc1308335633e0c451035dbe0"><td class="memItemLeft" align="right" valign="top">DR_EXPORT size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__drsyms.html#gad582a65dc1308335633e0c451035dbe0">drsym_demangle_symbol</a> (char *dst, size_t dst_sz, const char *mangled, uint flags)</td></tr>
<tr class="memitem:ga8b7f688e703f8ca1937f091f53d3d697"><td class="memItemLeft" align="right" valign="top">DR_EXPORT <a class="el" href="group__drsyms.html#ga78793b36b5a0f529fb746b7ed0072442">drsym_error_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__drsyms.html#ga8b7f688e703f8ca1937f091f53d3d697">drsym_get_module_debug_kind</a> (const char *modpath, <a class="el" href="group__drsyms.html#gad3772ffd6c4e0d68738a31d7e25a3de9">drsym_debug_kind_t</a> *kind)</td></tr>
<tr class="memitem:ga88e18dc10941953589e1023d61ba0a57"><td class="memItemLeft" align="right" valign="top">DR_EXPORT <a class="el" href="group__drsyms.html#ga78793b36b5a0f529fb746b7ed0072442">drsym_error_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__drsyms.html#ga88e18dc10941953589e1023d61ba0a57">drsym_module_has_symbols</a> (const char *modpath)</td></tr>
<tr class="memitem:gad6eb2e2cee8fba5ee6eb439905b3ecb9"><td class="memItemLeft" align="right" valign="top">DR_EXPORT <a class="el" href="group__drsyms.html#ga78793b36b5a0f529fb746b7ed0072442">drsym_error_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__drsyms.html#gad6eb2e2cee8fba5ee6eb439905b3ecb9">drsym_search_symbols</a> (const char *modpath, const char *match, bool full, <a class="el" href="group__drsyms.html#ga91f8c849b1194872a42f2e272937bcd9">drsym_enumerate_cb</a> callback, void *data)</td></tr>
<tr class="memitem:ga5a983d39217af0f8a39868c66e0646d0"><td class="memItemLeft" align="right" valign="top">DR_EXPORT <a class="el" href="group__drsyms.html#ga78793b36b5a0f529fb746b7ed0072442">drsym_error_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__drsyms.html#ga5a983d39217af0f8a39868c66e0646d0">drsym_search_symbols_ex</a> (const char *modpath, const char *match, uint flags, <a class="el" href="group__drsyms.html#gad100c05f0c59c0d24a92563a1672caf2">drsym_enumerate_ex_cb</a> callback, size_t info_size, void *data)</td></tr>
<tr class="memitem:gaf3fc654dfbb2d1e1717ee60229d7ac9f"><td class="memItemLeft" align="right" valign="top">DR_EXPORT <a class="el" href="group__drsyms.html#ga78793b36b5a0f529fb746b7ed0072442">drsym_error_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__drsyms.html#gaf3fc654dfbb2d1e1717ee60229d7ac9f">drsym_free_resources</a> (const char *modpath)</td></tr>
<tr class="memitem:ga01b46346170fbc4580d2e4fb5c4ba616"><td class="memItemLeft" align="right" valign="top">DR_EXPORT <a class="el" href="group__drsyms.html#ga78793b36b5a0f529fb746b7ed0072442">drsym_error_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__drsyms.html#ga01b46346170fbc4580d2e4fb5c4ba616">drsym_enumerate_lines</a> (const char *modpath, <a class="el" href="group__drsyms.html#ga05af254b09fc1b6fb45d3b83d458a351">drsym_enumerate_lines_cb</a> callback, void *data)</td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><p>Header for DRSyms DynamoRIO Extension. </p>
</div></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="dir_1c2293a07c09a9e2b32ca067d36e7658.html">dynamorio_package</a></li><li class="navelem"><a class="el" href="dir_908861fef8f908da2485ad4f190715de.html">ext</a></li><li class="navelem"><a class="el" href="dir_56a0b00ba47aeb17733185c5784e2c4d.html">drsyms</a></li><li class="navelem"><a class="el" href="drsyms_8h.html">drsyms.h</a></li>
    <li class="footer" style="float:none;text-align:center"><img border=0 src="favicon.png"> &nbsp;  DynamoRIO API version 5.0.0 --- Wed Sep 10 2014 21:36:44 &nbsp; <img border=0 src="favicon.png">
</small></address>
<!--END !GENERATE_TREEVIEW-->
</body>
</html>
